An Experimental Study of Dynamic Dominators
نویسندگان
چکیده
Motivated by recent applications of dominator computations, we consider the problem of dynamically maintaining the dominators of flow graphs through a sequence of insertions and deletions of edges. Our main theoretical contribution is a simple incremental algorithm that maintains the dominator tree of a flow graph with n vertices through a sequence of k edge insertions in O(mmin{n, k}+ kn) time, where m is the total number of edges after all insertions. Moreover, we can test in constant time if a vertex u dominates a vertex v, for any pair of query vertices u and v. Next, we present a new decremental algorithm to update a dominator tree through a sequence of edge deletions. Although our new decremental algorithm is not asymptotically faster than repeated applications of a static algorithm, i.e., it runs in O(mk) time for k edge deletions, it performs well in practice. By combining our new incremental and decremental algorithms we obtain a fully dynamic algorithm that maintains the dominator tree through intermixed sequence of insertions and deletions of edges. Finally, we present efficient implementations of our new algorithms as well as of existing algorithms, and conduct an extensive experimental study on real-world graphs taken from a variety of application areas.
منابع مشابه
Finding Dominators in Practice
The computation of dominators in a flowgraph has applications in several areas, including program optimization, circuit testing, and theoretical biology. Lengauer and Tarjan [30] proposed two versions of a fast algorithm for finding dominators and compared them experimentally with an iterative bit-vector algorithm. They concluded that both versions of their algorithm were much faster even on gr...
متن کاملComputing Frequency Dominators and Related Problems
We consider the problem of finding frequency dominators in a directed graph with a single source vertex and a single terminal vertex. A vertex x is a frequency dominator of a vertex y if and only if in each source to terminal path, the number of occurrences of x is at least equal to the number of occurrences of y. This problem was introduced in a paper by Lee et al. [11] in the context of dynam...
متن کاملA Linear-Time Algorithm for Finding All Double-Vertex Dominators of a Given Vertex
Dominators provide a general mechanism for identifying reconverging paths in graphs. This is useful for a number of applications in ComputerAided Design (CAD) including signal probability computation in biased random simulation, switching activity estimation in power and noise analysis, and cut points identification in equivalence checking. However, traditional single-vertex dominators are too ...
متن کاملGeneralized Dominators
The notion of dominators is generalized to include multiple-vertex dominators in addition to traditional single-vertex dominators. A multiple-vertex dominator of a vertex is a group of vertices that collectively dominate the vertex. An algorithm for computing immediate multiple-vertex dom-inators is presented. The immediate dominator information is expressed in the form of a directed acyclic gr...
متن کاملImmediate Dominators in Linear Time An Elegant and Non-Amortized Algorithm EXTENDED ABSTRACT
Immediate Dominators in Linear Time An Elegant and Non-Amortized Algorithm EXTENDED ABSTRACT
متن کاملذخیره در منابع من
با ذخیره ی این منبع در منابع من، دسترسی به آن را برای استفاده های بعدی آسان تر کنید
عنوان ژورنال:
دوره شماره
صفحات -
تاریخ انتشار 2012